home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
LOGIC Apps
/
Logic-APPLE_II_APPS.iso
/
pc
/
LOGIC Apple II 5.25" Library - DOS Part 3
/
DOS077A.dsk
/
GAME PAK 5.int
< prev
next >
Wrap
Text File
|
2012-02-16
|
6KB
|
238 lines
5 TEXT
10 REM : 3 GAMES
15 CALL -936:VTAB 10
20 PRINT "WHICH GAME DO YOU WANT?"
30 PRINT "FOR SPELL 3 LETTER WORD TYPE 1(SOME BUGS!)"
40 PRINT "FOR SECRET MESSAGE TYPE 2"
50 PRINT "FOR MATH TYPE 3"
60 INPUT "WHICH GAME",GAME:IF GAME<1 OR GAME>3 THEN 20
70 IF GAME=3 THEN 20320
80 IF GAME=2 THEN 2000
100 REM :SPELL SIMPLE WORDS ENDING WITH AN "XX" SOUND
110 GOSUB 710:REM INIT
120 INPUT "NEW FILE?",G$
130 IF G$="YES" THEN GOSUB 850:REM ADD TO OR MAKE NEW FILE
140 INPUT "HOW MANY WORDS OF EACH SOUND",REQD
150 CALL -936
160 N=1+ RND (MAX)
170 CHECK$=" "
180 I0=0:I=0
190 I0=I0+1
200 I=I+1
210 IF A$(I,I)#"'" THEN 200
220 N=N-1:IF N>0 THEN 190
230 VTAB 5
240 TAB 5
250 PRINT "SPELL ";REQD;" THREE LETTER WORDS WHICH"
260 TAB 15:PRINT "END WITH AN"
270 TAB 18: POKE 50,127
280 PRINT " "
290 TAB 18:PRINT "'";
300 I=I+1:PRINT A$(I,I);:IF A$(I,I)#"'" THEN 300
310 PRINT :TAB 18:PRINT " "
320 POKE 50,255
330 TAB 17:PRINT "SOUND."
340 N=1
350 PRINT "WORD #";N;:INPUT ANS$
360 IF ANS$="" THEN 350
370 IF LEN(ANS$)<>3 THEN 420
380 FOR M=1 TO LEN(CHECK$)
390 IF ANS$(1,1)=CHECK$(M,M) THEN ANS$="XXX":NEXT M
400 CHECK$( LEN(CHECK$)+1)=ANS$(1,1)
410 GOSUB 510:REM TEST ANS$
420 IF ANS$="CORRECT" THEN 450
430 FOR K=1 TO 100:X= PEEK (-16336):NEXT K
440 PRINT "NO GOOD. TRY AGAIN.":GOTO 350
450 PRINT "VERY GODD."
460 PRINT "<CTRL-G>":REM BELL
470 N=N+1
480 IF N<1+REQD THEN 350
490 GOSUB 600
500 GOTO 150
510 REM : TEST ANSWER, RETURN ANS$=CORRECT
520 IF ANS$(2,3)#A$(I-2,I-1) THEN 590
530 J=1
540 JJ=A(I0)
550 IF I0>1 THEN J=A(I0-1)+1
560 FOR J=J TO JJ
570 IF B$(J,J)=ANS$(1,1) THEN ANS$="CORRECT"
580 NEXT J
590 RETURN
600 REM PRIZE
610 GR :COLOR= 0
620 FOR C=1 TO 15
630 COLOR= C
640 FOR J=1 TO 19 STEP 2
650 HLIN 19-J,19+J AT 19-J:HLIN 19-J,19+J AT 19+J
660 VLIN 19-J,19+J AT 19-J:VLIN 19-J,19+J AT 19+J
670 NEXT J:PRINT "<CTRL-G>":REM BELL
680 NEXT C
690 TEXT
700 RETURN
710 DIM A$(100)
720 DIM G$(10)
730 MAX=0:I=1
740 DIM B$(255)
750 DIM SOUND$(2)
760 DIM LTR$(20)
770 DIM ANS$(40)
780 DIM A(100)
790 A$="'AT'ET'AN'"
800 B$="BCFHMPRSTBGLMNPSWBCFMPRTV"
810 A(1)=9:A(2)=17:A(3)=25
820 MAX=3
830 DIM CHECK$(20)
840 RETURN
850 REM NEW FILE
860 INPUT "WHICH SOUND? IF DONE TYPE @.",SOUND$
870 IF SOUND$="@" THEN 960
880 A$( LEN(A$)+1)=SOUND$
890 A$( LEN(A$)+1)="'"
900 INPUT "FIRST LETTER OF EACH WORD IN ONE STRING?",LTR$
910 B$( LEN(B$)+1)=LTR$
920 I=I+1
930 A(I)= LEN(LTR$)
940 MAX=MAX+1
950 GOTO 860
960 RETURN
2000 DIM A$(40):DIM B(40)
2010 INPUT "LARGEST NUMBER=",MAX
2020 IF MAX<1 OR MAX>16000 THEN 2010
2025 INPUT "TYPE 1 LINE SECRET MESSAGE",A$
2040 II= LEN(A$)
2050 FOR I=0 TO II:B(I)=0:NEXT I
2060 VTAB 1
2070 CALL -958
2080 TAB 13:PRINT "SECRET MESSAGE"
2100 X= RND (MAX)
2110 Y= RND (MAX)
2120 Z=X+Y
2125 VTAB 6:CALL -868
2130 PRINT X;" + ";Y;" = ";
2140 INPUT ANS
2150 IF ANS=Z THEN 2160
2155 SO=-16336:FOR I=1 TO 130:SOU= PEEK (SO)+ PEEK (SO)- PEEK (SO):NEXT I:GOTO 2125
2160 I= RND (II)+1
2170 IF B(I)=1 THEN 2160
2180 B(I)=1
2190 VTAB 3
2200 TAB (I+1)
2210 PRINT A$(I,I)
2220 C=1
2230 FOR I=1 TO II:IF B(I)=0 THEN C=0
2240 NEXT I:IF C=1 THEN 2290
2250 TAB 1
2260 VTAB 6
2270 CALL -868
2280 GOTO 2100
2290 VTAB 6:TAB 1
2300 PRINT "YOU GO IT!"
2310 END
20320 GOSUB 20910:REM INIT,GET GRADE
20330 GOSUB 20410:REM PROBLEM
20340 IF ANS<>Z THEN GOSUB 20770:REM BAD
20350 IF ANS<>Z THEN 20380
20360 GOSUB 20850:REM GOOD
20370 IF B=9 THEN GOSUB 21110:REM GRADUATE
20380 IF A=39 AND B>10 THEN GOSUB 21320:REM REPEAT GRADE
20390 GOTO 20330
20400 HLIN 19-J,19+J AT 19-J
20410 REM : PROBLEM
20420 OPR= RND (G)
20430 IF OPR=0 THEN GOTO 20470:REM ADD
20440 IF OPR=1 THEN GOTO 20520:REM SUB
20450 IF OPR=2 THEN GOTO 20590:REM TIMES
20460 GOTO 20650:REM DIVIDE
20470 REM :ADD
20480 OPR$="+"
20490 N=(G+1)/2:IF N>6 THEN N=6
20500 X= RND (5^N):Y= RND (5^N):Z=X+Y
20510 GOTO 20740
20520 REM : SUBTRASCT
20530 OPR$="-"
20540 N=((G-1))/2:IF N>6 THEN N=6
20550 X= RND (5^N):Y= RND (5^N)
20560 IF G>4 OR X>Y THEN 20580
20570 Z=X:X=Y:Y=Z
20580 Z=X-Y:GOTO 20740
20590 REM :TIMES
20600 N=(G-1)/2:IF N>3 THEN N=3
20610 OPR$="*"
20620 X= RND (5^N):Y= RND (5^N)
20630 Z=X*Y
20640 GOTO 20740
20650 REM : DIVIDE
20660 N=(G-2)/2:IF N>3 THEN N=3
20670 OPR$="/"
20680 Z= RND (5^N):Y= RND (5^N)
20690 IF Z>Y THEN 20710
20700 X=Y:Y=Z:Z=X
20710 IF Y=0 THEN 20680
20720 X=Y*Z
20730 GOTO 20740
20740 PRINT X;" ";OPR$;" ";Y;" = ";
20750 INPUT ANS
20760 RETURN
20770 REM :BAD ANSWER
20780 B=B+2
20790 COLOR= 11
20800 PLOT A,B
20810 B=B-1:A=A+1
20820 PRINT "CORRECT ANSWER IS ";X;" ";OPR$;" ";Y;" = ";Z
20830 FOR I=1 TO 100:P= PEEK (-16336):NEXT I
20840 RETURN
20850 REM :GOOD ANSWER
20860 COLOR= 12
20870 PLOT A,B
20880 A=A+1:B=B-1
20890 FOR I=1 TO 29-B:PRINT "<CTRL-G>":NEXT I:REM CONT G BELL
20900 RETURN
20910 REM :INIT
20920 DIM G$(20)
20930 TEXT
20940 CALL -936:CALL -958
20950 PRINT "THIS IS THE GAME OF MATH."
20960 PRINT
20970 PRINT "IF YOU CAN REACH THE TOP WITNIN 40 TRIES YOU GRADUATE TO THE NEXT GRADE."
20980 INPUT "WHICH GRADE TO YOU WANT TO START?",G
20990 IF G<1 THEN 20980
21000 GOSUB 21020
21010 RETURN
21020 GR :REM SET UP SCREEN
21030 COLOR= 2
21040 FOR I=0 TO 9:HLIN 0,39 AT I:NEXT I
21050 COLOR= 8
21060 FOR I=31 TO 39:HLIN 0,39 AT I:NEXT I
21070 A=0:B=30
21080 COLOR= 12:PLOT A,B:B=B-1:A=A+1
21090 PRINT :PRINT :PRINT
21100 RETURN
21110 REM :GRADUATE
21120 GR
21130 FOR I=1 TO 15
21140 COLOR= I
21150 PRINT "<CTRL-G>":REM CONT G BELL
21160 FOR J=0 TO 19
21170 HLIN 19-J,19+J AT J
21180 HLIN 19-J,19+J AT 19+J
21190 VLIN 19-J,19+J AT 19-J
21200 VLIN 19-J,19+J AT 19+J
21210 NEXT J
21220 NEXT I
21230 G=G+1
21240 TEXT :CALL -936:CALL -958
21250 PRINT :PRINT :PRINT "YOU HAVE GRADUATED TO GRADE ";G;".":INPUT "CONTINUE?",G$
21260 INPUT G$
21270 IF G$#"YES" AND G$#"NO" THEN 21250
21280 IF G$="NO" THEN 21380
21290 GR
21300 GOSUB 21020
21310 RETURN
21320 REM : DIDN'T PASS
21330 TEXT
21340 FOR I=1 TO 50:PRINT :NEXT I
21350 PRINT "TOO BAD. THIS GRADE IS PRETTY HARD FOR YOU. LETS TRY ANOTHER GRADE."
21360 GOSUB 20950
21370 RETURN
21380 GOSUB 20950:RETURN